package mf.com.Service.Product;

import com.github.pagehelper.PageInfo;
import mf.com.entity.product.ProductSpec;

import java.util.List;

/**
 * @Author: lmf
 * @Create: 2024/4/9 22:02
 * Description:  产品规格服务层
 */
public interface SpecService {

    /**
     * 根据ID查找产品规格信息。
     * 参数：无。
     * 返回值：查询结果，封装在Result<ProductSpec>中，ProductSpec为产品规格实体类。
     */
    ProductSpec findById(Integer id);

    /**
     * 根据ID删除记录。
     * 参数：无。
     * 返回值：操作结果，封装在Result<Integer>中，其中Integer表示删除的记录数。
     */
    Integer deleteById(Integer id);

    /**
     * 更新记录。
     * 参数：无。
     * 返回值：操作结果，封装在Result<Integer>中，其中Integer表示更新的记录数。
     */
    Integer update(ProductSpec productSpec);

    /**
     * 保存记录。
     * 参数：无。
     * 返回值：操作结果，封装在Result<Integer>中，其中Integer表示保存的记录数。
     */
    Integer save(ProductSpec productSpec);

    /**
     * 查找所有记录。
     * 参数：无。
     * 返回值：查询结果，封装在Result<List<ProductSpec>>中。
     */
    List<ProductSpec> findAll();

    /**
     * 分页查找记录。
     * 参数：无。
     * 返回值：查询结果，封装在Result<List<ProductSpec>>中。
     */
    PageInfo<ProductSpec> findByPage(ProductSpec productSpec, Integer pageNum, Integer pageSize);
}
